package core

import (
	"github.com/gin-gonic/gin"
	"go.uber.org/zap"
	"vpom_-system/global"
	"vpom_-system/initialization"
)

type server interface {
	ListenAndServe() error
}

// RunServer 用于启动服务器
func RunServer() {
	addr := global.Config.System.Addr()
	Router := initialization.InitRouter()

	// 加载所有的 JWT 黑名单，存入本地缓存
	// todo service.LoadAll()

	Router.GET("/Test", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "pong",
		})
	})

	// 初始化服务器并启动
	err := Router.Run(addr)
	if err != nil {
		global.Log.Error("Failed to start server", zap.Error(err))
	} else {
		println("Susses")
	}
}
